package com.tarena.lbs.activity.pojo.po;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import lombok.AccessLevel;
import lombok.Data;
import lombok.experimental.FieldDefaults;

import java.io.Serializable;
import java.util.Date;

@Data
@TableName("activity")// 指定表名
@FieldDefaults(level = AccessLevel.PRIVATE)
public class ActivityPO implements Serializable {

    @TableId(value = "id", type = IdType.AUTO) // 主键注解，指定主键自增
    Integer id; // 注意：数据库字段类型为bigint，所以这里应该使用Long类型

    @TableField("activity_name")
    String activityName;

    @TableField("start_date")
    Date startDate;

    @TableField("end_date")
    Date endDate;

    @TableField("describes")
    String describes;

    @TableField("img_ids")
    //1,2,3,4,5
    String imgIds;

    @TableField("shop_ids")
    String shopIds;

    @TableField("target_customer")
    String targetCustomer;

    @TableField("activity_target")
    String activityTarget;

    @TableField("delivery_channel")
    Integer deliveryChannel;

    @TableField("reward_coupon_id")
    Integer rewardCouponId; // 注意：数据库字段类型为varchar，所以这里应该使用String类型

    @TableField("share_profile")
    String shareProfile;

    @TableField("share_url")
    String shareUrl;

    @TableField("status")
    Integer status;

    @TableField("business_id")
    Integer businessId;

    @TableField(fill = FieldFill.INSERT)
    Date createAt;

    @TableField(fill = FieldFill.INSERT_UPDATE)
    Date updateAt;

    @TableField("reward_type")
    Integer rewardType;

    @TableField("enable_status")
    Integer enableStatus;

    @TableField("activity_type")
    Integer activityType;

    @TableField("channel_type")
    Integer channelType;

    @TableField("marketing_type")
    Integer marketingType;

    @TableField("activity_json")
    String activityJson;
}
